package com.ruoyi.eam.doman;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 固定资产对象 eam_asset
 *
 * @author ruoyi
 * @date 2024-06-17
 */
public class EamAsset extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 资产id */
    private Long assetId;

    /** 供应商编号 */
    @Excel(name = "供应商编号")
    private Long supplierId;

    /** 存放编号 */
    @Excel(name = "存放编号")
    private Long locationId;

    /** 类型编号 */
    @Excel(name = "类型编号")
    private Long TypeId;

    /** 资产编码 */
    @Excel(name = "资产编码")
    private String assetCode;

    /** 资产名称 */
    @Excel(name = "资产名称")
    private String assetName;

    /** 资产图片 */
    @Excel(name = "资产图片")
    private String assetImage;

    /** 金额 */
    @Excel(name = "金额")
    private BigDecimal price;

    /** 数量 */
    @Excel(name = "数量")
    private Long assetNum;

    /** 资产规格 */
    @Excel(name = "资产规格")
    private String asseSpec;

    /** 购买日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "购买日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date buyTime;

    /** 报废日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "报废日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date scrapTime;

    /** 资产用途 */
    @Excel(name = "资产用途")
    private String assetUse;

    /** 发票号 */
    @Excel(name = "发票号")
    private String billNum;

    /** 开票日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开票日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date billTime;

    /** 型号 */
    @Excel(name = "型号")
    private String model;

    /** 创建人 */
    @Excel(name = "创建人")
    private Long creator;

    /** 使用人 */
    @Excel(name = "使用人")
    private Long usePerson;

    /** 使用状态 */
    @Excel(name = "使用状态")
    private Long useStatus;

    /** 类别名称 */
    @Excel(name = "类别名称")
    private String typeName;

    @Excel(name = "类别名称")
    private String statusName;

    @Excel(name = "类别名称")
    private String useName;

    @Excel(name = "类别名称")
    private String deptName;

    @Excel(name = "领/借用时间")
    private String manageDate;

    private Integer num;

    public Integer getNum() {
        return num;
    }

    public void setNum(Integer num) {
        this.num = num;
    }

    public String getUseName() {
        return useName;
    }

    public void setUseName(String useName) {
        this.useName = useName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getManageDate() {
        return manageDate;
    }

    public void setManageDate(String manageDate) {
        this.manageDate = manageDate;
    }

    @Excel(name = "资产单位")
    private String assetUnit;

    @Excel(name = "存放位置名称")
    private String locationName;

    @Excel(name = "逻辑删除 1.正常 0.删除")
    private Long isdel;

    public Long getIsdel() {
        return isdel;
    }

    public void setIsdel(Long isdel) {
        this.isdel = isdel;
    }

    public String getLocationName() {
        return locationName;
    }

    public void setLocationName(String locationName) {
        this.locationName = locationName;
    }

    public String getAssetUnit() {
        return assetUnit;
    }

    public void setAssetUnit(String assetUnit) {
        this.assetUnit = assetUnit;
    }


    public String getStatusName() {
        return statusName;
    }

    /** 类别名称 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "过保日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expirationDate;

    public Date getExpirationDate() {
        return expirationDate;
    }

    public void setExpirationDate(Date expirationDate) {
        this.expirationDate = expirationDate;
    }

    public void setStatusName(String statusName) {
        this.statusName = statusName;
    }

    public Long getUseStatus() {
        return useStatus;
    }

    public void setUseStatus(Long useStatus) {
        this.useStatus = useStatus;
    }

    public String getTypeName() {
        return typeName;
    }

    public void setTypeName(String typeName) {
        this.typeName = typeName;
    }

    public void setAssetId(Long assetId)
    {
        this.assetId = assetId;
    }

    public Long getAssetId()
    {
        return assetId;
    }
    public void setSupplierId(Long supplierId)
    {
        this.supplierId = supplierId;
    }

    public Long getSupplierId()
    {
        return supplierId;
    }
    public void setLocationId(Long locationId)
    {
        this.locationId = locationId;
    }

    public Long getLocationId()
    {
        return locationId;
    }

    public Long getTypeId() {
        return TypeId;
    }

    public void setTypeId(Long TypeId) {
        this.TypeId = TypeId;
    }

    public void setAssetCode(String assetCode)
    {
        this.assetCode = assetCode;
    }

    public String getAssetCode()
    {
        return assetCode;
    }
    public void setAssetName(String assetName)
    {
        this.assetName = assetName;
    }

    public String getAssetName()
    {
        return assetName;
    }
    public void setAssetImage(String assetImage)
    {
        this.assetImage = assetImage;
    }

    public String getAssetImage()
    {
        return assetImage;
    }
    public void setPrice(BigDecimal price)
    {
        this.price = price;
    }

    public BigDecimal getPrice()
    {
        return price;
    }
    public void setAssetNum(Long assetNum)
    {
        this.assetNum = assetNum;
    }

    public Long getAssetNum()
    {
        return assetNum;
    }
    public void setAsseSpec(String asseSpec)
    {
        this.asseSpec = asseSpec;
    }

    public String getAsseSpec()
    {
        return asseSpec;
    }
    public void setBuyTime(Date buyTime)
    {
        this.buyTime = buyTime;
    }

    public Date getBuyTime()
    {
        return buyTime;
    }
    public void setScrapTime(Date scrapTime)
    {
        this.scrapTime = scrapTime;
    }

    public Date getScrapTime()
    {
        return scrapTime;
    }
    public void setAssetUse(String assetUse)
    {
        this.assetUse = assetUse;
    }

    public String getAssetUse()
    {
        return assetUse;
    }
    public void setBillNum(String billNum)
    {
        this.billNum = billNum;
    }

    public String getBillNum()
    {
        return billNum;
    }
    public void setBillTime(Date billTime)
    {
        this.billTime = billTime;
    }

    public Date getBillTime()
    {
        return billTime;
    }
    public void setModel(String model)
    {
        this.model = model;
    }

    public String getModel()
    {
        return model;
    }
    public void setCreator(Long creator)
    {
        this.creator = creator;
    }

    public Long getCreator()
    {
        return creator;
    }
    public void setUsePerson(Long usePerson)
    {
        this.usePerson = usePerson;
    }

    public Long getUsePerson()
    {
        return usePerson;
    }

    @Override
    public String toString() {
        return "EamAsset{" +
                "assetId=" + assetId +
                ", supplierId=" + supplierId +
                ", locationId=" + locationId +
                ", TypeId=" + TypeId +
                ", assetCode='" + assetCode + '\'' +
                ", assetName='" + assetName + '\'' +
                ", assetImage='" + assetImage + '\'' +
                ", price=" + price +
                ", assetNum=" + assetNum +
                ", asseSpec='" + asseSpec + '\'' +
                ", buyTime=" + buyTime +
                ", scrapTime=" + scrapTime +
                ", assetUse='" + assetUse + '\'' +
                ", billNum='" + billNum + '\'' +
                ", billTime=" + billTime +
                ", model='" + model + '\'' +
                ", creator=" + creator +
                ", usePerson=" + usePerson +
                ", useStatus=" + useStatus +
                ", typeName='" + typeName + '\'' +
                ", statusName='" + statusName + '\'' +
                ", expirationDate=" + expirationDate +
                ", assetUnit=" + assetUnit +
                ", locationName=" + locationName +
                ", isdel=" + isdel +
                '}';
    }
}
